package com.yonyou.pmclouds.statistic.rmiitf;

import com.yonyou.pmclouds.basecom.entity.PageObject;
import com.yonyou.pmclouds.basecom.exception.BusinessException;
import com.yonyou.pmclouds.statistic.entity.ActivityPenetrateVO;
import com.yonyou.pmclouds.statistic.entity.MemberCountVO;
import com.yonyou.pmclouds.statistic.entity.OrgActivityStatisticsViewVOs;
import com.yonyou.pmclouds.statistic.entity.ProjectBillTypeCountVO;

public interface ActivityStatisticsService {
    OrgActivityStatisticsViewVOs queryActivityInfo(String tenantId, String orgId, int limit, long timeStart, long timeEnd) throws BusinessException;


    PageObject<?> queryOrgActivityOrder(String tenantId, String orgWord, int start, int limit, long timeStart, long timeEnd) throws BusinessException;

    OrgActivityStatisticsViewVOs queryTenantActivityInfo(String tenantId, long timeStart, long timeEnd) throws BusinessException;

    PageObject queryProjectActivityOrder(String tenantId, String orgId, String keyWord, int start, int limit, long timeStart, long timeEnd) throws BusinessException;


    ProjectBillTypeCountVO[] queryCountOfProjectBillType(String tenantId, String pkProject, long timeStart, long timeEnd);

    ActivityPenetrateVO queryActivityDetail(String tenantId, String orgId, long timeStart, long timeEnd) throws BusinessException;

    MemberCountVO[] queryEntPersonRankInOrg(String tenantId, String orgId, String entId,
                                            long timeStart, long timeEnd, Integer pageStart, Integer limit) throws BusinessException;
}
